package com.hex.liyue.usermodule.presenter;

import android.text.TextUtils;

import com.hex.liyue.commonmodule.bean.BaseBean;
import com.hex.liyue.commonmodule.manager.HttpManager;
import com.hex.liyue.commonmodule.manager.UserManager;
import com.hex.liyue.commonmodule.net.ResponseListener;
import com.hex.liyue.commonmodule.utils.RegularUtils;
import com.hex.liyue.usermodule.bean.MyMessageResultBean;

/**
 * 这是个无密码登录的业务
 * Created by yukoyuan on 16/6/14.
 */
public class VcodeLoginPresenter {
    IVcodeLoginView iVcodeLoginView;

    public VcodeLoginPresenter(IVcodeLoginView iVcodeLoginView) {
        this.iVcodeLoginView = iVcodeLoginView;
    }

    /**
     * 这是一个获取验证码的方法
     */
    public void getVcode() {
        //判断手机号是否正确
        if (!RegularUtils.phone(iVcodeLoginView.getPhone())) {
            iVcodeLoginView.showT("请输入正确的手机号");
            return;
        }
        iVcodeLoginView.delyTime(120);
        HttpManager.getInstance().getvcode(iVcodeLoginView.getPhone(), 2, new ResponseListener<BaseBean>() {
            @Override
            public void onSuccess(BaseBean baseBean) {
                iVcodeLoginView.showT("发送成功");
            }

            @Override
            public void onFailure(String responseresult) {
                iVcodeLoginView.showT(responseresult);
            }
        });
    }

    /**
     * 这是一个登录的方法
     */
    public void login() {
        //手机号
        if (!RegularUtils.phone(iVcodeLoginView.getPhone())) {
            iVcodeLoginView.showT("请输入正确的手机号");
            return;
        }
        //验证码
        if (TextUtils.isEmpty(iVcodeLoginView.getVcode())) {
            iVcodeLoginView.showT("验证码不能为空");
            return;
        }
        iVcodeLoginView.showLod("请求中...");
        HttpManager.getInstance().vcodeLogin(iVcodeLoginView.getPhone(), iVcodeLoginView.getVcode(), new ResponseListener<MyMessageResultBean>() {
            @Override
            public void onSuccess(MyMessageResultBean loginBean) {
                UserManager.setUserId(loginBean.data.hx_id);
                UserManager.setIsLogin(true);
                iVcodeLoginView.startMainActivity();
                iVcodeLoginView.closeLod();
            }

            @Override
            public void onFailure(String responseresult) {
                iVcodeLoginView.showT(responseresult);
                iVcodeLoginView.closeLod();
            }
        });

    }
}
